package com.baijia.authentication.principal;

/**
 * @title Service
 * @desc web请求，要被包装 
 * @author caoliang
 * @date 2015年12月5日
 * @version 1.0
 */
public interface Service extends Principal {
    
    void setPrincipal(Principal principal);
    
    /**
     * 执行登出
     * 
     * @param sessionIdentifier
     * @return 是否成功
     */
    boolean logOutOfService(String sessionIdentifier);
    
    /**
     * service是否匹配
     * 
     * @param service
     * @return 结果
     */
    boolean matches(Service service);
}
